Abuse for RISC OS.
RISC OS port (v0.05) by Lee Noar.

Introduction
------------
Sometime around July '97, Crack dot Com, a PC game software house, released
the source code to Abuse into the public domain. By chance I came across it
and decided to try and compile it under RISC OS, and this is the result.


Requirements
------------
Risc PC
  Currently, the game is only likely to run on a Risc PC, and even then I've
only tried it on a StrongARM. I'd be interested to hear how fast it runs on
an ARM610. The game runs in a 320 x 200 pixel 8 bit or 32 bit mode. A mode
definition file is supplied for anyone who doesn't already have such a mode
on their system.

!X-files
  The abuse-b.zip archive contains an X-files directory which in turn
contains the data set for Abuse, so a copy of <!X-files> is required. This is
available from Hensa, package e127.

About 8Megs hard disc space

Toolbox modules


Installation
------------
To install Abuse, dearchive the contents of both ZIP files to the same place
on your hard drive so that they merge together. Ensure that you have a 320 x
200 mode defined in the file

ADFS::IDEDisc4.$.!Boot.Resources.Configure.Monitors.Acorn.AKF??

for which ever monitor you are using. If not then paste the one supplied into
it (you may have to reset the machine to force the new mode to be loaded).


Running the game
----------------
Double-click the game's icon in the filer window to load it to the icon bar.
The game can be started immediately by clicking Select on the icon bar icon
at which point the standard level will be loaded.. The start up window will
open showing the name of the file loading together with sliders roughly
indicating progress. You can return to the desktop during play by pressing
F12 or from the Abuse main menu by selecting the quit option at the bottom
right of the screen (don't worry you won't loose your current game). To go
back to the game as you left it, click Select on the icon bar icon.


Game keys
---------
    Up arrow - main character jump
  Left arrow - main character left
 Right arrow - main character right
       Mouse - move sight
      Select - fire
      Adjust - special power
           P - pause
      Return - unpause
         1-7 - choose weapon
  R-Ctrl/Ins - cycle through available weapons
Home/Page Up - as above
          F1 - display keys
      Escape - return to the Abuse main menu with the option of
               returning to the game or desktop
         F12 - return to desktop (not when paused)


WIMP front end
--------------

The main menu

Clicking Menu on the icon bar icon displays this menu -

  -------------
  | Abuse     |
  -------------
  | Info    > |
  | Options   |
  | Reset     |
  | Quit      |
  -------------

The options window

Selecting Options from the main menu displays the options window.
There are currently three video modes supported, these are:-

  320x200x256(P)
  320x200x256
  320x200x16M

The P in brackets, as also shown in the above window, stands for programmable
to distinguish it from a normal 256 colour mode. The programmable mode is the
default and recommended, it and the 16M colour mode both give the correct
colour palette.

Enabling the Load alternative file option will unshade the other buttons in
the alternative file box. The filename typed into the writable field is
interpreted when the game starts up according to which radio button in the
alternative file box is selected. The command line options that these
replace are shown in brackets.

Dragging a LISP or SPEC file to the window will automatically insert the
filename into the writable field, select the Load alternative file option and
attempt to set the correct radio button. The criteria for this file
identification are as follows:-

  If the file has a .lsp (or /lsp) extension then set the -lsf button.

  If the file has a .spe (or /spe) extension then set the -f button.

  If the file cannot be identified from the above then set the -f option if
    the first four bytes of the file contain the letters SPEC.

  If the file can still not be identified then default to the -lsf button
    and assume that the correct button will be set manually.

The file will never be identified as using the -a option as this is expected
to be the name of a single directory that resides in AbuseData.AddOn rather
than a full pathname. For example, assuming a directory called carcass exists
in AbuseData.AddOn and the files carcass/lsp and carchar/lsp are present
within this directory, then typing carcass into the writable field and
selecting the -a option will load this add on when the game starts up.

The Editor option will start the game in editor mode. Note that attempts to
use the Spec file option with the editor will be ignored as level files
should be loaded from the editor itself.

Selecting the reset item from the main menu allows all level data loaded, if
any, to be discarded ready to start again. The reset option should be used
before selecting a new alternative file from the options window or before
enabling/disabling the editor, however, the game does not need to be reset to
toggle the sound or change display mode.

All options can be applied and saved to disc by clicking on the Save button
in which case they will be reloaded when !Abuse is next run. Using the Set
button, will apply the options without saving them to disc.

Command line options
--------------------
-vmode
The functionality of this option is now part of the options window and is no
longer supported.

-no_fastload
Every time Abuse starts up, it creates a file called fastload in !Scrap which
it uses during the game. This file should be deleted by Abuse on a clean
exit. If Abuse exits by any means other than the main menu then this file
will not be deleted automatically. At over 2Megs it's quite a large file, so
manual deletion is advisable. I added this option to disable the use of the
fastload file. This should cut the disc space required by over 2Megs, but may
affect level loading speeds.

-nodelay
Switch off frame delay so that the game runs as fast as the computer will
allow.

-nolight
Disable lighting effects.

-lisp
Start up in the builtin LISP interpreter.

Some of these options will be moved to the options window in a future
version.


Additional notes
----------------
I chose to use an x-file directory to store the game data because there are
directories in the distribution which contain more than 77 entries. It was
also necessary to retain the DOS file extensions on the file names.

Saved games are written by Abuse into the X-file directory.

Filenames can be either of the DOS or RISC OS type:-
DOS - / as directory separator, full stop as filename extension separator
RISC OS - full stop as directory separator, / as filename extension separator
i.e. a standard RISC OS filename.

Although the music files are included, the music does not work as I couldn't
find any information on the file format :-(. In the next version I might add
support for standard General Midi file play back although the user may have
to supply their own music files.

Despite the fact that the network code for multi-player games still exists in
the game, it is not functional and should not be used.

The purchasing information displayed on exiting Abuse is left over from the
DOS version and does not relate to this RISC OS port.

Thanks to Samuel Kock for confirming that the registered data set does work
with my port.


History
-------
 v0.01 - Initial release.

 v0.02 - Fixed slight problem with RISC OS directory names that contain '/'.          These were being parsed as directory separators.

 v0.03 - Previously, Abuse's memory manager allocated a memory pool of a
         maximum of about 3MB, no matter how big the wimp slot was. This
         prevented some large add on levels from being used. The size of the
         memory pool allocation is now linked to the current wimp slot that
         Abuse is running in.

 v0.04 - Fixed load level menu option.
         Keyboard auto repeat is acceptable now, I think, but not exactly
         WIMP standard.
         Changed weapon cycle keys to what they should have been. The source
         code uses the word INSERT so I assumed it meant the one above
         DELETE. It should have been keypad 0. I guess I should have looked
         at the help screen closer :-)

 v0.05 - Added a 256 colour programmable display mode to the choice of modes.
         In a simple test, this proved to be slightly faster than the 32 bit
         mode, plus the fact that colour translation isn't required as it
         was before.
         Added WIMP front end and game reset.


Known problems in v0.05
-----------------------
Hopefully to be fixed in the next version:-

Dots occasionally appear at bottom of screen. This is an error message
concerning a missing file. The file isn't actually missing, some SPEC files
refer to a corresponding .cpf (cache profile) file using a DOS rooted
filename i.e. c:/.../... which is then added to the !Abuse path.

When moving up the directory structure in the editor's file selection
windows, you can't move back down (presumably, DOS would automatically return
the special directory .. to allow this).

When a filename is selected in the editor's file selection window, they are
rooted and too long to see the leaf name.

Due to the addition of the WIMP front end, some text messages are lost. These
are not usually important but may be in some circumstances. A future version
may address this problem.

If Deskspace (and possibly other similar utilities) is being used then on
returning to the desktop from the game the pointer jumps up to the next
screen despite attempts by myself to reset it to the centre of the current
screen. I've no idea why this is, it's annoying but not serious.

Copyright
---------
Here is the copyright notice that accompanies the source code:-

---8<---

Crack dot Com is hereby releasing the source code to Abuse to the public domain.


Ownership:

The following are statements of Crack dot Com's ownership. These items are
NOT being submitted to the public domain.


Crack dot Com retains ownership of the Abuse trademark.
Crack dot Com retains ownership of the Crack dot Com trademark.
Crack dot Com retains ownership of the Abuse "retail" data set.
Crack dot Com retains ownership of the Abuse "registered" data set.

The "retail" and "registered" data sets are defined as the levels, sound
effects, music, artwork and other data which are NOT common to the
"shareware" release of the game.


Licenses and Third Party Owners:

Crack licensed the DOS Abuse rights to Electronic Arts and the Mac Abuse
rights to Bungie. Crack is therefore NOT releasing the full data set to the
public domain to protect EA's and Bungie's investmentts in the product.


Sound effects found in the shareware release of Abuse are the copyright of
Bobby Prince and are not being submitted to the public domain.


Disclaimer of Warranty:

As with most public domain software, no warranty is made or implied by Crack
dot Com or Jonathan Clark.

Examples of What you CAN Do:

Make another game and sell it commercially using the Abuse source code.

Use pieces of the source code or shareware data (excluding the WAV's- you
must speak to Bobby Prince) however you see fit.

Learn how to make a better game.

Port Abuse to any system you like.

---8<---

To clarify:-
The game data supplied is that of Abuse shareware version 2.00
The sound effects are copyright Bobby Prince and are NOT public domain


Abuse links
-----------
For additional levels, graphics and documentation try the following links:-
<http://members.aol.com/mad666mike/index.htm>
<http://www.fortunecity.com/tattooine/carpenter/42/index.html>
<http://www.crack.com/>
<ftp://ftp.cdrom.com/pub/abuse/>

Problems??? - Send me an Email -

<leenoar@argonet.co.uk>
Lee Noar
